package com.bit.librarymanagementsystem.mapper;

import com.bit.librarymanagementsystem.Entity.BookInfo;
import com.bit.librarymanagementsystem.model.PageRequest;
import org.apache.ibatis.annotations.Insert;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Result;
import org.apache.ibatis.annotations.Select;

import java.util.List;

@Mapper
public interface BookMapper {
    @Insert("insert into book_info (`book_name`,`author`,`count`,`price`,`publish`,`status`)" +
            "values (#{bookName},#{author},#{count},#{price},#{publish},#{status})")
    public void insertBook(BookInfo bookInfo);

    @Select("select count(1) from book_info where status!=0")//查询所有记录
    Integer count();

    @Select("select * from book_info where status!=0 order by id asc limit #{offset} ,#{pageSize}")
    List<BookInfo> queryListByPage(PageRequest pageRequest);

//    @Result(column = "create_time",property = "createTime")
    @Select("select * from book_info where `status`!=0 and id=#{bookId}")
    BookInfo queryBookById(Integer bookId);

    Integer updateBook(BookInfo bookInfo);


    Integer batchUpdateBook(List<Integer> ids);
}
